import java.util.*;

public class demo08 {
    //双向排序
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int m=sc.nextInt();
        int[] arr=new int[n];
        for(int i=0;i<n;i++) {
            arr[i]=i+1;
        }
        int[][] times=new int[m][2];
        for(int i=0;i<m;i++) {
            times[i][0]=sc.nextInt();
            times[i][1]=sc.nextInt();
        }
        for(int i=0;i<m;i++) {
            if(times[i][0]==0) {
                sort2(0,times[i][1]-1,arr);
            }else {
                sort1(times[i][1]-1,n-1,arr);
            }
        }
        for(int i=0;i<n;i++) {
            System.out.print(arr[i]+" ");
        }
    }
    private static void sort1(int left,int right,int[] arr) {
        int k=0;
        for(int i=left;i<right;i++) {
            for(int j=left;j<right-k;j++) {
                if(arr[j]>arr[j+1]) {
                    int tmp=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=tmp;
                    //升序
                }
            }
            k++;
        }
    }
    private static void sort2(int left,int right,int[] arr) {
        int k=0;
        for(int i=left;i<right;i++) {
            for(int j=left;j<right-k;j++) {
                if(arr[j]<arr[j+1]) {
                    int tmp=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=tmp;
                    //降序
                }
            }
            k++;
        }
    }
}
